//
//  stmt.h
//  LTLBMC
//
//  Created by GD Huang on 5/17/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#ifndef LTLBMC_stmt_h
#define LTLBMC_stmt_h

#include "label.h"
#include "stmtkind.h"



namespace cilast {
    
    class stmtkind;
    class label;
    
    class stmt : public OCamlObject {
    public:    
        //the following members are in cil
        std::vector<label*> labels;
        stmtkind* skind;
        int sid;
        std::vector<stmt*> succs;
        std::vector<stmt*> preds;
        
        //the following members are added in cilast
        int did;
        stmt* ipostdom;
        
        
        
    };
    
}


#endif
